═══ 1. ABOUT INITOR ═══ Initor enables you to edit OS2 "INI" files. You are able to add, delete, copy and edit applications, keys and key data. Further more you are able to save and read data from the current INI file to and from another INI file(s). You can also save applications, keys and key data to a ASCII HEX file such that you can view it using an ASCII editor. DO NOT USE THIS PROGRAM IF YOU DONT KNOW WHAT YOU ARE DOING!!!! The author takes no responsibilty if INI files are damaged and no "safety keys" are included into the application; therefore its very fast and efficient! This program was written because the LOTUS INI file editor has some problems. The lotus ini editor cannot be sized to a different window size, it comes up with this silly window at startup and does not remember the last directory were a file was edited. So the basic structure of Real World Programmings INI file editor was used and a few things and bugs were changed to make INITOR. ═══ Note ═══ Note that this editor was written with speed in mind. I am looking after a few systems (LanServer 4.0 etc) and needed a quick INI editor to change a few settings to make a few applications "behave" a little better. I got frustrated with LOTUS INI editor because it doesn't remember the last path, screen location and comes up with this box at startup telling you its dangerous to change something in you INI files (dont we all know?????). So I wrote this one and use it (and a few friends too) nearly every day. An I left out a few things to make this program faster to work with and not have to press too many buttons. ═══ Test ASCII file ═══ From version 2.3 on there is a test ASCII HEX file included. This ASCII HEXFILE is called HEXTEST.ASC and you can see the syntax of a correct ASCII file. You can try to load some data into an INI file or save other applications to it. Be sure to have a backup copy of the file if you want to get back to the original. ═══ Test INI file ═══ I have included a test INI file which you can load an try out a few things before you want to change the "real" ones. It has a number of applications, keys and key data in it. The file is taken from my LOTUS AmiPro. It is the "AMIUSER3.INI" files which contains all the setttings of a user. The first APPLICATION is the "AMIUSER" in that file. A KEY is for example the "BACKUPPATH" and the KEYDATA is "H:\AMIPRO\TMP" (AmiPro's direcotry on my machine is on "H"). Try a few things here and you get the idea. You could test run INITOR'S INI file. Dont worry if you changed something incorrectly. Simply re-make in that case using Make default ini file ═══ History of INITOR ═══  June 1996: INITOR 1.0  June 1996: INITOR 1.1 - added very simple help menu (shows readme file). - added abilty to edit and add BINARY data (hex data). - fixed last path saved (path was cut off when longer the 20). - fixed redraw when canceling add/edit dialog box. - fixed some data appearing in key data window when adding new key. - fixed some data appearing in key data window when adding new application.  September 1996: INITOR 1.2 - added copy action for saving key data. - added copy action for saving one application and all its keys. - added entire file copy. - fixed bug in the hex edit part, too small edit buffer (still only 10K). - fixed bug in memory allocation of data (leak?). - fixed saving of changed data (quicker and more efficient). - fixed bug of help file not found (using argument passed to main now). - fixed a bug in my email address.  October 1996: INITOR 1.3 - added reading in of other entire INI file into current INI file (ALL OF IT).  October 1996: INITOR 1.4 - fixed "cancel" button in the edit application dialog box. - added display of error message when incorrect INI file is used for reading/writing. - changed the font in the hex box to courier (monospaced). - added reading in of applications from other file into current INI file.  October 1996: INITOR 1.5 - Icons can now be dropped onto INITOR. - On the commandline you can call up INITOR with a filename specified. - POPUP menus now working. - Accelerate Keys now working. - Partly fixed the memory usage. - Rearranged the menus so there's now a FileMenu. - Menus now include accelerator key names. - Use TAB key now to jump between Application and Key window and scroll with key to the next item. - There are now two paths to be saved to the initor ini file: + path name for display files. + path name for save/read files. - INITOR has its OWN ini file now. Must/will be located in the same directory as the program itself. - Fixed: Title specifies name of INI file now correct.  October 1996: INITOR 1.6 - Fixed bug of being able to edit application even if "No Entries" - Fixed wrong display of accelerator keys on the menus. (there I tell my students ALL the time to be careful using copy/paste functions and then I do it myself....) - added filename to query menus to make sure that the CORRECT key gets deleted! - added SPLIT/UNSPLIT menu to be able to edit *LARGE* keys (I mean *!LARGE!*)  October 1996: INITOR 1.7 - Fixed bug from 1.5 and 1.6 where I forgot to switch of the dynamic inclusion of standard libraries. It was working with on my machine, coz the library was found in one of my path.  December 1996 to January 1997: INITOR 2.0 - Fixed: at startup the system and user profile where loaded although only user profile displayed on title bar. - Fixed: when unzipped first, MY screen location was in the initor.ini file which gave a few people some problems. I have not included my screen location. This will start INITOR the first time with some default location. - Fixed: The Display area (HexBytes) did NOT display correctly bytes above 7F. I did not cast (c term) a value past to a long to (hex)string (sprintf) conversion function. It saw the upper byte a the negative flag. - Fixed: When saving using the HEX WINDOW and adding a byte to the already existing value I had forgotten to recalculate the string length when passing it back to the window string function (once again rather stupid, indeed). - Fixed (not my fault): When the ASCII string in the was less then 7 bytes long it was NOT displayed on the ASCII display of the key display area. I have no idea, why this is the case. I calculated it properly but could not see the reason, so I made it constant and it works. This does not influence the performance of the editor but does get to my nerves since it is an ugly "help" and doesnt suit my philosophy of making things (nearly) perfect. - Fixed: The vertical scroll bar now scrolls page wise, too. - Fixed: When moving through the keys one at a time, and one of the keys would contain no data, the previous value was displayed intead of an empty data window. - added context sensitive help and proper help menu, hence the new major number of INITOR. - added copy option to copy an application or key to the current INI file but with a new name. - changed: the screen location is now saved upon exit of the program. This was suggested by a number of users. - added some settings into the initor.ini file. This stops confimations to pop up or to stop INITOR to save its screen location upon exit.  April 1997: INITOR 2.1 - The compile and design platform of INITOR has been for a while Merlin. The compiler used up to February 1997 was Borland's C++. Now the compiler has changed to: Visual Age C++ for OS/2 by IBM. - added feature to save applications, keys and key data to an ASCII HEX file to be able to read the data using a normal ASCII editor and to compare different ASCII file with each other. - changed some of the memory allocation calls, should use less memory from now on!  April 1997: INITOR 2.2 - I forgot to include the static link option in my compiler setup which led to problems that people did not have the libraries available. I appologize for this one, and it wasn't the first time it had happened. (See above).  June 1997: INITOR 2.3 - Fixed: Borlands C++ compiler used to take a few errors not a seriously as the Visual Age C++ compiler of IBM. Furthermore seems that Borlandc C++ compiler "ovelooked" a few problems in my code leading to the problem that buttons did not get "switched back on". This was the case in the EDIT, COPY and ADD application boxes. I have to say I am very sorry and very embarrased about this. - Fixed: Sometimes (on a few machines) when reading Applications from another file and reading this via list selection into the current file, the list crashed. This was due to the forgiveness of Borlandc C++ compiler. I could reproduce the error with what usrers told me and fixed this. - Fixed: Again when I coded it with Borlands compiler the syntax used in making dialog boxes wasnt followed quite correctly. Using Visual Age C++ it simply did not see the coding. Following the PM-reference manual I fixed the font in the HEX BOX and it is now mono-spaced! - ADDED: saving and reading to and from ASCII HEX files is now possible. I use this feature now (quite heavily actually) myself. Be careful when saving large INI files to ASCII. Each char in the INI file uses up 4 times more in the ASCII file. Including all the spaces, formatting etc a 700KB INI file blows up to 4MB!. It is quite useful when saving an application or a few applications! ═══ Acknowledgements ═══ Below I would like to thank some people for bug reports, suggestions and ideas.  IBM for their C and C++ platform "Visual Age C++ for OS/2". I have seen a number of compilers in my time, but this beats everything!  Blain, Delimon, and English for their excellent book "Real World Programming for OS/2 (1993)" from which some parts of this programs source code was taken.  Jim Gawn for his input of not fully setup vertical scroll bars of data window. I simply did not include code for it.  Erwin Hogeweg for his input for large keys, this let to the split key menus. This was due to the limitation of a listbox being not able to show large data sizes.  Raman Samanya for the idea of mouse button pop up menus, accelerator keys and switching off confirmation.  Kevin Yank and Andreas Schlemmer for his idea passing the filename to be opened as a commandline option and hence being able to drop and associate.  Tomi Soini for pointing out that the FILE_ID.DIZ file was missing in the zip file.  Pat Shanahan for pointing out that there was a missing library when running INITOR 1.6! I switch off a lot of things during design to make compilation faster and I forgot to reset this when I put it onto the net (dynaimc versus static linking).  Thomas Ho for reporting that the incorrect files where loaded upon startup (system ini and user ini where loaded).  Traugot Ziegler, Reinhart Gruhn, Don Woodall, Mike Ryan for pointing out that the program ran off the screen upon startup. I had included into "initor.ini" my screen configuration which runs on 1024x768. People using lower screen resolutions ran into problems.  Andre Nancoz for pointing out some errors in saving using the hex window. This was only the case when a key was increased by a byte and not saved before. He pointed out, too, that some keys DO NOT have "0" as an ending. This did not damage keys but just increased keys by one byte ending it with a "0". (Well when testing it you save things lots of times.....).  Andre Nancoz for pointing out that in case a key had 0 data bytes the previous key was displayed.  A number of people pointed out I had forgotten to make the libraries static and not include them dynamically (missing _doscalls lib).  A number of people had pointed out that the OK button did not get reselected after data was added thus making it impossbile to save. ═══ Enhancements for the future ═══  Now that I have Visual Age C++ from IBM and the MultiLine listboxes with sizes greater the 64K are properly implemented I will redesign the editing part and make it part of the bottom window of the main canvas with an option of saving or not saving (I always wanted to do this!!!!).  Add the ability to be asked when saving to an INI file and the data exists if the data should be overwritten and maybe give the possibilty of renaming the current key/application.  Open two windows of INITOR and copy/paste between editors to get/save keys???  Some person suggested, to include a function like INIMAINT CTRL-F10 to clean up some junk. I have to figure out how to do this. Maybe somebody can give me a hand or hints??? Other ideas anyone???? Suggestions. Send suggestions and ideas to the author. Find the address in the about menu. ═══ Compatibility of INITOR ═══ It has run on a number of systems with different types of WARP installed. This program is designed and compiled from April 1997 onwards using IBM's Visual Age C++ for OS/2. I (and a friend of mine) use this program for system administration purposes. We looking after systems with different configurations and flavour of OS/2:  Warp plain  Warp fixpak5  Warp fixpak10  Warp fixpak17  Warp fixpak26  Warp Server 4.0  Merlin (design and compilation platform of INITOR) with and without fixpak 1. ═══ Bugs of the program ═══ I tested this thouroughly and it worked fine with me and one other person, but as you can see in the history and the acknowledgements, a number bugs came up anyway. These bugs were related to program performance and not to data loss, though! NOTE! One user reported data loss when deleting a number of different applications at the same time. I have tried and tried following his instructions but I cant "replay" it. PLEASE! Report bugs to the author! I really would like to hear from you if you found any, so I can enhance the program. I believe in (some) free stuff. ═══ Contact the Author ═══ Jobst Schmalenbach 19 York Street Caulfield South, Vic, 3162 Australia Home phone: 61 3 9523 7348 Work phone: 61 3 9905 5705 Email: jobst@senna.eng.monash.edu.au ═══ 2. Help Menu ═══ Use the choices on the Help pull-down to display: Help index Displays the index of help menu. General Help Displays some information about INITOR program. Keys Help Displays a list of keys usage. Using Help Provides detailed information on the kinds of help available and how to use help. Product Information The dialog displays information about the address of the author and version number of the product. ═══ 3. Using Help ═══ Displays some general help information about INITOR program. This includes basic operation and hints. ═══ 4. Using Help ═══ Use this choice to obtain information on how to use the Help facility. ═══ 5. Accelerator Keys ═══ Use this choice to see a list of keys and a description of the function of the keys for the INITOR program. Accelerator keys simply are keys offering quick access to menus, which only could be accessed using at least two clicks with the mouse. For example to get to the "Copy Key" function, you need to click on "Copy" and then on "Copy Key". Using the keyboard you can simply press "Shift-c". Press here to see more keys. ═══ 5.1. Key Assigments ═══ ACCELERATOR KEYS The list of keys is arranged in groups. HELP KEYS F1 Help Index Window SHIFT F1 Keys Help Window Esc Previous Help Panel, or End help if only one panel Alt Switch IN/OUT action bar Alt+F4 End help or End program SYSTEM KEYS Alt+Esc Switch to the next program, including full-screen programs Ctrl+Esc Switch to the Task List WINDOW KEYS Underlined letter Move among the choices on the action bar and pull-downs submenu or execute the function chosen INITOR SPECIFIC KEYS SHIFT+A Display the Product Information (About) Dialog Box. SHIFT+U Load the USER PROFILE into the editor. SHIFT+S Load the SYSTEM PROFILE into the editor. SHIFT+P Load the USER PROFILE and SYSTEM PROFILE into the editor. SHIFT+O Load the a user specified INI file into the editor. A dialog box will pop up and a filename can be specified. SHIFT+R Refresh current INI file (reload). ALT+X Quit program. BACKSPACE Split current key into chunks of 8000 bytes, such that it can be used for dialog boxes. SHIFT+BACKSPACE UN-split current set of keys to make it one key again. SPACE Edit current application using the ASCII editor. SHIFT+SPACE Edit current application using the HEX editor. INSERT Add a new application to current INI file. SHIFT+INSERT Add a new KEY to current application. DELETE Delete current APPLICATION. SHIFT+DELETE Delete current KEY. SHIFT+C Copy current application to a new application with a different name. CONTORL+SHIFT+C Copy current key to a new key with a different name. TAB Switch between windows. This selects either KEY or APPLICATION window such that it can be scrolled using keys. ═══ Moving around ═══ You simply click on an application to go to another application in the "Application Name" Window using scroll bars as well. You can use the TAB key to switch between the applicatio or key windows and scroll using the cursor keys. All key names of that application will be displayed in the "Key Name" window. The data of the first key will be displayed in HEX and ASCII. If you need another key, click on another key and the new data will be displayed with offset and the number of bytes in HEX and ASCII. ═══ 6. File Menu Help ═══ If you want to change to another INI file click on "File" (ALT-f).  You can choose: - USER INI FILE (os2.ini) - SYSTEM INI FILE (os2sys.ini) - USER AND SYSTEM FILE (above together) - Other INI files (eg. AmiPro's INI FILES) - Refresh will update the display, thus re-read the current INI file. - Exit will close INITOR. ═══ Open User Profile ═══ If you click on this menu item, the user profile (OS2.INI) will be loaded into the editor. ═══ 6.1. Open System Profile ═══ If you click on this menu item, the system profile (OS2SYS.INI) will be loaded into the editor. ═══ 6.2. Open User and System Profile ═══ If you click on this menu item, the system profile (OS2SYS.INI) and the user profile (OS2.INI) will both be loaded into the editor. ═══ 6.3. Refresh ═══ Refresh will update the display, thus re-read the current INI file. ═══ 6.4. Exit ═══ Exit will close INITOR. This will also save the current screen location into the INITOR.INI file. You an change the default saving of the window position using the explanation under the meu Initor's own INI file. ═══ 6.5. Open Other Profile ═══ This option will allow you to open a particular INI file. This can be ANY INI file as long as it conforms to the INI file data standards. Example INI files would be: AMIPRO.INI, AMIUSER.INI, TCPOS2.INI and even INITOR's "initor.ini". Once you clicked on this item a file dialog box will pop up and you can specify (or find) the INI file you like to edit. The default "open" directory can be changed using Save Display Path. ═══ 6.6. Make default ini file ═══ A new "initor.ini" file for INITOR is made. When this menu option is chosen the following new applications and keys are made which are used during operation of INITOR!  Basic Configuration - Display Path - SaveRead Path - SaveScreenPositionOnClose - ScreenPosition  Confirmations - ConfirmDelete - ConfirmSplit See the help menu Initor's own INI file for further explanation. ═══ 7. Initor's own INI file ═══ INITOR uses its own INI file "initor.ini" to find some configuration values at run time. Each one of the entries in the INITOR's ini file is explained below with application name, key name and possible values and how the values influence the perfomrmance of initor. Rather then adding a menu to INITOR the user can simply change the values (and hence the behaviour) by editing using INITOR the file initor.ini in INITOR's directory. If something went wrong the user can simly re-make a new initor.ini file using default configurations. See hereof Make default ini file. The application name is first, the key name is named second.  "Basic Configuration" - "Display Path" This value is a string constant and contains the path of the last opened "other" ini file. If changed the dialog box of open other will have the new path entry. See Menu: Save -> DisplayPath.  "Basic Configuration" - "SaveRead Path" This value is a string constant and contains the value of the last saved to directory, that is using the menu Save. See Menu: Save -> ReadPath.  "Basic Configuration" - "SaveScreenPositionOnClose" Ths value is a string constant and can only have the values "ON" or "OFF". When set to "ON" the current screen location of the INITOR is saved to the initor.ini file. When set to "OFF" screen location saving can only be done using the menu "save screen location". See Menu: Save -> SaveScreenLocation.  "Basic Configuration" - "ScreenPosition" This value are for unsigned long integer and make up the dimensions of the window upon startup and contains the location when screen poisition is saved. This is also set to the current location when a new ini file is produced. See Menu: Save -> SaveScreenLocation.  "Confirmations" - "ConfirmDelete" This is a string and can either be set to "ON" or "OFF". If set to "ON" a confirmation box will appear before deletion of application and keys. If set to "OFF" this application box will not appear and the applications and keys are deleted straight away!  "Confirmations" - "ConfirmSplit" This is a string and can either be set to "ON" or "OFF". If set to "ON" it will ask for confirmation to split a key (unsplit a key). If set to "OFF" it will not ask and split/unsplit the key straight away!. ═══ 8. Edit Items Menu Help ═══ To change the data of an application use "Edit Application" (alt-e). A Dialog box will appear to either edit an application or key in ASCII or HEX. You cannot change the application name, that is set read only but you can change the key name and the data. If you need to change an application to a different name use Copy Items providing a way to change the name of an application. ═══ 8.1. Edit Application (ASCII) ═══ This dialog box has the application in the first row, the key name in the second and the data in the listbox underneath. This dialog box is for ASCII strings with values above 32 and below 127 (ASCII). If key data is shown with values below 32 you can click on "HEX" button and another dialog box appears to be able to change binary data. See Edit Application (Hex) If you want to edit keys larger than 10500 bytes you might consider reading the SPLIT and UNSPLIT found in other sections of this manual. ═══ 8.2. Edit Application (Hex) ═══ This dialog box is for ASCII strings with values below 32 and above 127. If you clicked on the HEX button in the "ADD-EDIT" dialog box above a dialog box appears to edit hex (binary) data. Just edit data as required keeping a space between each BYTE and use HEX and BINARY numbers to enter data into the window. You must keep a space between each byte or else your data will not be accepted. The box will stay until the data is accepted or you press CANCEL. You must end the data in the hex window with a "00" and a space. The "00" is part of the key data in the INI files and the space is the programs way to determine a byte separated from another byte. I dont think this is a major problem although it might seem a little awkward in the first place. If you want to edit keys larger than 10500 bytes you might consider reading the SPLIT and UNSPLIT found in other sections of this manual. ═══ 9. Add Items Menu Help ═══ If you need to add a new application or add a new key to an existing application choose "Add Items" (ALT-A). You have then two options to either add a new application or a new key. Both of the options require to add some data as well. ═══ 9.1. Add New Application ═══ This option adds a new application to the INI file. An application is for example "AmiPro" or "Netscape" found in the user (OS2.INI) file. If you add a new application it will be sorted alphabetically (not in the INI file). You must give a new key and data as well, otherwise the application will not be accepted. ═══ 9.2. Add New Key ═══ This option adds a new KEY to the current application pointed at. A new key would be for example "TMPPATH" with data (maybe) "H:\tmp" for and application "BackupDir". ═══ 10. Delete Items Menu Help ═══ If you need to delete a key or application click on "Delete Items" (ALT-d). This will delete either the current application or current key depending on which of the menus Delete Application or Delete Key you have chosen. You are asked for confirmation to delete the key or application. The application or key name is displayed on the query menu, so you know which key it is. You can switch off confirmation. See hereof the help item Initor's own INI file. ═══ 10.1. Delete Application ═══ This will delete the applcation pointed at with all keys belonging to THAT application and the data belonging to the keys. An application example: "AMIUSER" in the provided test.ini! ═══ 10.2. Delete Key ═══ This will delete the key and the data. A key example of above application "BackUpPath" Data (maybe) for the above key "H:\tmp" If the key was the only key to the application, the application is deleted as well. ═══ 11. Copy Items Menu Help ═══ This option allows you to copy an application or a key with a different name into the current INI file. You could use this option for example with IBM's "TCPOS2.INI" which contains information for the dialer. You can copy an existing dialer setting (application) to another name an change a few settings. This will save a fair amount of time clicking through the setup. This option is also useful to save an application or key before you want to make some changes. In case something went wrong you can simply copy it back. A dialog box will pop up and ask you for the new name. Note that you cannot change the "from" value, it is read only. You can either copy a complete application or a single key . ═══ 11.1. Copy Application ═══ This option copies an entire application with all its keys and data to a new application with a different name but same content. ═══ 11.2. Copy Key ═══ This option copies a key and its data to the same application but with a different key name. The data will be identical. ═══ 12. HEX file (ASCII) format ═══ Below you can find the format of the ASCII HEX FILE so you can write you own to import it into an INI file loaded. An example ASCII HEX file is included in this distribution of INITOR. The first item specifies the application and must be of the form: Application: Application Name up to 255 chars with spaces. The Application specifier and the name must be separated by at least on character. The rest of the line specifies the name of the application (including spaces unitl end of line encountered. The next item specifies the keyname of the application. It must be of the form: Key: Key name up to 255 chars including spaces. The keyname specifier and the keyname must be separated by at least one space. The rest of the line specifies the keyname.(including spaces unitl end of line encountered. The next item specifies the size of the key and it must be of the form: Size: number The number and the Size: identifier must be separated by a space. Note: Particular care must be taken specifying the size. There need to be 1 item for each XX, thus: XX XX XX XX XX would be 5 in size. The number MUST be specified in HEX! Note: The numbers must exactly match the number of items to be read otherwise and error will be shown! The next item is the key data. Each line is preceded by its position in the key data, eg: 000000: 6A 7B 17 10 00 00 44 00 E0 00 1C 03 00 02 01 00 >j{....D.р.......< 000010: 00 00 44 00 E0 00 1C 03 00 02 01 00 00 00 FF FF >..D.р.........  < This is ONLY done such that the reader can find out at which position a character is in the key, especially if it is a longer key. When specifying this in a file to be read in, it would be sufficient to specify: XXXXXXX 6A 7B 17 10 00 00 44 00 E0 00 1C 03 00 02 01 00 >j{....D.р.......< XXXXXXX 00 00 44 00 E0 00 1C 03 00 02 01 00 00 00 FF FF >..D.р.........  < as it would still read in the key data correcty since it is read in sequencially and not by the values at the beginning of the line! If you make an error INITOR will specify the line number of the error and an expected character. Note: If you need to know the setup of an ASCII HEX file, just save an exapmle ASCII HEX file and you know what is required. ═══ 13. Save Menu Help ═══ This menu will save data of INI files and configuration items from INITOR. Saving INI file data can be done using two types of saving actions:  Save data to other INI file(s)  Save data to ASCII HEX file(s). Using the following items:  Save Display Path  Save Read Path  Save Location some of INITOR's own configuration items can be saved into its own INI file. ═══ 14. Save Data to other INI file ═══ If you want to save (or copy) an application or key to another file you may do so by using the save menu (ALT-s). The following options available are:  Save Application to other (INI) File This option saves ALL KEYS of one (selected) APPLICATION to a new (specified) file.  Save Key to other (INI) File This option saves ONE (selected) KEY of one (selected) APPLICATION to a new (specified) file.  Save ALL to other (INI) File. This option saves all information of the current file to a new (specified) file. Note: If this file exists, it is replaced! I had to do this because the sizes of some files would grow incredibly! After you clicked on one of the three you are asked (dialog box) to specify the file name. If you specify an existing file the information is simply added to the file. The nature of INI data writing does not allow for appending. If the data you want to write to an INI file exists in that file it is simply replaced. No check (YET) is made. So you must make sure you do not overwrite the current application in the "save to" file. (You could simply open another copy of the INITOR.) If the file already exists, but is NOT a proper INI file, an error message will be displayed and nothing will happen. The currently selected item in either of the lists will be the item to be saved to a file selected in the file dialog box. ═══ 15. Save Data to ASCII HEX file ═══ If you want to save (or copy) an application or key to another file in ASCII HEX format you may do so by using the save menu (ALT-s) and then selecting one of the following options. The format of the ASCII file you can find the explanation under HEX file (ASCII) format. The ASCII file is human readable. Each application, key and key data is specified in ASCII HEX charracters. Each key line is preceded by its distance from the beginning of the key.  Save Application to ASCII HEX This option saves an entire application to a ASCII HEX file.  Save Key to ASCII HEX file This option save only one key to a ASCII HEX file. The ASCII file is human readable. Each application, key and key data is specified in ASCII HEX charracters. Each key line is preceded by its distance from the beginning of the key for the entire length of the key.  Save All to ASCII HEX file With this option you can save an entire INI file to a ASCII readable HEX file. Be careful using this options, the size of the ASCI file is about 4 times bigger than the INI file. This is due to tha fact that one byte in the INI file uses up 3 chars in the ASCII file. The formatting of the document to make it more readable then increases the size by another 1 byte. So taking a 700MB ini file can increase to a 3MB file as checked with my OS@.INI file! If you use either of the above options you will be asked to specify a file. If this file exists, the new data is simply appended to that file. If the file does not exist, it is opened new. If the file is a binary data file, you will get an error message that you are not able to open this file. ═══ 16. Save configuration options of INITOR ═══ Some of initors options used during run time can be saved using the following options:  Save Display Path This option saves the path of the directory last read from, that is the directory of the last file opened using the option  Save Read Path This option saves the path of the directory last read saved to, that is the directory where ini files are written to.  Save Window Position This option save the current window location. This option is only of use if the save window upon exit is disabled. ═══ 17. Read Menu Help ═══ If you want to read data from a specified INI file into the current displayed file simply click on (ALT-r): There are two choices to read data from another file into the current file:  Read INI file data into current file.  Read ASCII HEX data into current file. Once you clicked on one of the items, you are asked to specify a filename to read from. If you specify a new file it is opened (for saving only). If you specify an existing file it is checked and if it's not a proper INI file an error message will be displayed and nothing happens. ═══ 17.1. Read other INI data file ═══ This options allows you to read other INI file data into the current INI file. There are two options available:  Read Application(s) from other file. This option allows you to read particular applications from another specified ini file into the current file. If you select this option, you need to specify a filename. If you selecet cancel the procedure is simly aborted. If you select OK the INI file is scanned for available applications which are displayed in a selection box. If the file fails to be an INI file a message will be displayed! You can select multiple applications, a double select will deselect. If you press OK the selectd applications are read into the current file. If the applications exist, they are overwritten. no check is made. If you need to read another appliations in with the same name you could rename the current application and then read in the new one.  Read other INI file into current file. This option reads an entire INI file into the current file. If an application or key existed in the current file, no check is made. It is simply overwritten. If you select this option you have to specify a filename. If you select OK the file is checked whether it is an INI file. If it fails to be an INI file the process will be aborted. If it is OK the entire file is read into the current file. ═══ 17.2. Read ASCII HEX data ═══ This option allows you to read ASCII HEX DATA into the current INI file. There are two options avaialble:  Read Application(s) from ASCII HEX file. This option allows you to read particular applications from an ASCII HEX file into the current file. If you select this option, you need to specify a filename. If you selecet cancel the procedure is simly aborted. If you select OK the INI file is scanned for available applications which are displayed in a selection box. If the file fails to be a ASCII hex file as specified under ASCII HEX file format an error message will be displayed! You can select multiple applications, a double select will deselect. If you press OK the selectd applications are read into the current file. If the applications exist, they are overwritten. no check is made. If you need to read another appliations in with the same name you could rename the current application and then read in the new one.  Read all data from ASCII HEX file into current. This option reads ALL data from an ASCII HEX file into the current file. If you select this option, you need to specify a filename. If you selecet cancel the procedure is simply aborted. If you select OK the INI file is scanned for available applications and all the data is read into the current file. If data with the same name exists, it is replaced. If the file fails to be a ASCII hex file as specified under ASCII HEX file format an error message will be displayed! ═══ 18. Split Menu Help ═══ There is a limitation of how many bytes one can display in a dialog box. This is set to 32K. However, the HEX editor needs for each byte displayed 3 bytes to display the entity. (32K / 3) > 10500bytes. Therefore if you need to edit a key which is larger than 10500 bytes you need to split the key first. Using the SPLIT item from the MISC MENU will split the key into 8000 byte chunks, with the last being the remainder of the key, hence a 19396 byte long key is split into 2x8000 and 1x3396. You need to place the cursor on the key to be split. Using Unsplit will reverse the operation. Consider the unsplit key is called "testing" and its 19396 long. than the split keys are called and sized:  testing_Initor SplitKey_1, 8000  testing_Initor SplitKey_2, 8000  testing_Initor SplitKey_3, 3396 Please leave the names until you unsplit them otherwise the program has no way to find out which key is split and which of the keys belong together. When unsplitting the cursor must be placed on the first key to unsplit. ═══ 18.1. Split Key ═══ Using this option will split the key into 8000 byte chunks, with the last being the remainder of the key, hence a 19396 byte long key is split into 2x8000 and 1x3396. You need to place the cursor on the key to be split. ═══ 18.2. Unsplit Key ═══ Using this option will put the keys together again. If you have edited one of the split keys this will produce a larger key or smaller key than the original one, depending on what you have done with the split keys. ═══ 19. PopUp Menus ═══ POPUP menus are selected when the right mouse button is pressed in either of the windows (application or key). There are two POPUP menus availabe depending the window the cursor is on:  If the cursor is in the application window, the following popup is displayed: - Add Application - Copy Application - Save Application - Delete Application - Edit Application ASCII - Edit Application HEX - Refresh  If the cursor is in the key window, the following popup is displayed: - Add Key - Copy Key - Save Key - Delete Key - Refresh If you do not select anyone of the items, nothing will happen. You must hold the right mouse as long as you want to select something. The popup menu disappears as soon as the mouse button is released.